package top.vains.service;

import com.baomidou.mybatisplus.extension.service.IService;
import top.vains.entity.Role;
import top.vains.entity.User;
import top.vains.entity.customer.Pagination;

import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author vains
 * @since 2020-02-17
 */
public interface IUserService extends IService<User> {

    /**
     * 根据账号密码获取用户信息
     * @param number 账号
     * @param password 密码
     * @return 返回用户信息
     */
    User login(String number, String password);

    /**
     * 获取用户列表
     * @param pagination 分页参数
     */
    void getUsers(Pagination pagination);

    /**
     * 获取用户拥有的角色
     * @param userId 用户id
     * @return 拥有的角色
     */
    List<Role> getUserHaveRole(Integer userId);

    /**
     * 获取用户未拥有的角色
     * @param userId 用户id
     * @return 未拥有的角色
     */
    List<Role> getUserNotHaveRole(Integer userId);

}
